import request from '@/utils/request'

export function getAreaTree() {
  return request({
    url: '/sysArea/tree',
    method: 'get'
  })
}

// 小区相关请求

/**
 * 查询所有小区列表
 * @param data 表单参数
 * @returns {AxiosPromise}
 */
export function listAllCommunity() {
  return request({
    url: '/zyCommunity/listAll',
    method: 'get'
  })
}

/**
 * 查询小区列表
 * @param data 表单查询参数
 * @returns {AxiosPromise}
 */
export function listCommunity(data) {
  return request({
    url: '/zyCommunity/list',
    method: 'get',
    params: data
  })
}

/**
 * 查询小区楼栋树
 * @param data 表单查询参数
 * @returns {AxiosPromise}
 */
export function listCommunityAndBuilding() {
  return request({
    url: '/zyCommunity/listCommunityAndBuilding',
    method: 'get'
  })
}

/**
 * 查询小区楼栋单元树
 * @param data 表单查询参数
 * @returns {AxiosPromise}
 */
export function listCommunityAndBuildingAndUnit() {
  return request({
    url: '/zyCommunity/listCommunityAndBuildingAndUnit',
    method: 'get'
  })
}

/**
 * 新增小区信息
 * @param data 表单参数
 * @returns {AxiosPromise}
 */
export function addCommunity(data) {
  return request({
    url: '/zyCommunity/add',
    method: 'post',
    data: data
  })
}

/**
 * 修改小区信息
 * @param data
 * @returns {AxiosPromise}
 */
export function updateCommunity(data) {
  return request({
    url: '/zyCommunity/update',
    method: 'post',
    data: data
  })
}

// 获取小区信息 详情
// export function infoCommunity(data) {
//   return request({
//     url: '/zyCommunity/getInfo',
//     method: 'get',
//     params: data
//   })
// }

// 删除小区信息
export function deleteCommunity(data) {
  return request({
    url: '/zyCommunity/delete/' + data,
    method: 'post'
  })
}


// 楼栋相关请求-------------------------------------------------
/**
 * 查询所有楼栋列表
 * @param data 表单参数
 * @returns {AxiosPromise}
 */
export function listAllBuilding(data) {
  return request({
    url: '/zyBuilding/listAll/' + data,
    method: 'get'
  })
}

/**
 * 查询楼栋列表
 * @param data 表单查询参数
 * @returns {AxiosPromise}
 */
export function listBuilding(data) {
  return request({
    url: '/zyBuilding/list',
    method: 'get',
    params: data
  })
}

/**
 * 新增楼栋信息
 * @param data 表单参数
 * @returns {AxiosPromise}
 */
export function addBuilding(data) {
  return request({
    url: '/zyBuilding/add',
    method: 'post',
    data: data
  })
}

/**
 * 修改楼栋信息
 * @param data
 * @returns {AxiosPromise}
 */
export function updateBuilding(data) {
  return request({
    url: '/zyBuilding/update',
    method: 'post',
    data: data
  })
}

// 删除楼栋信息
export function deleteBuilding(data) {
  return request({
    url: '/zyBuilding/delete/' + data,
    method: 'post'
  })
}


// 单元相关请求----------------------------------------------

/**
 * 查询所有单元列表
 * @param data 表单参数
 * @returns {AxiosPromise}
 */
export function listAllUnit(data) {
  return request({
    url: '/zyUnit/listAll/' + data,
    method: 'get'
  })
}

/**
 * 查询单元列表
 * @param data 表单查询参数
 * @returns {AxiosPromise}
 */
export function listUnit(data) {
  return request({
    url: '/zyUnit/list',
    method: 'get',
    params: data
  })
}

/**
 * 新增单元信息
 * @param data 表单参数
 * @returns {AxiosPromise}
 */
export function addUnit(data) {
  return request({
    url: '/zyUnit/add',
    method: 'post',
    data: data
  })
}

/**
 * 修改单元信息
 * @param data
 * @returns {AxiosPromise}
 */
export function updateUnit(data) {
  return request({
    url: '/zyUnit/update',
    method: 'post',
    data: data
  })
}

// 删除单元信息
export function deleteUnit(data) {
  return request({
    url: '/zyUnit/delete/' + data,
    method: 'post'
  })
}




// 房屋相关请求
/**
 * 查询所有房屋列表
 * @param data 表单参数
 * @returns {AxiosPromise}
 */
export function listAllRoom() {
  return request({
    url: '/zyRoom/listAll',
    method: 'get'
  })
}

/**
 * 查询房屋列表
 * @param data 表单查询参数
 * @returns {AxiosPromise}
 */
export function listRoom(data) {
  return request({
    url: '/zyRoom/list',
    method: 'get',
    params: data
  })
}

/**
 * 新增房屋信息
 * @param data 表单参数
 * @returns {AxiosPromise}
 */
export function addRoom(data) {
  return request({
    url: '/zyRoom/add',
    method: 'post',
    data: data
  })
}

/**
 * 修改房屋信息
 * @param data
 * @returns {AxiosPromise}
 */
export function updateRoom(data) {
  return request({
    url: '/zyRoom/update',
    method: 'post',
    data: data
  })
}

// 删除房屋信息
export function deleteRoom(data) {
  return request({
    url: '/zyRoom/delete/' + data,
    method: 'post'
  })
}

/**
 * 处理请求结果
 * @param res 请求结果
 * @param that 传入的this，用于调用弹窗
 */
export function resultResolve(res, that) {
  if (res.code === 200) {
    that.$message({
      showClose: true,
      message: res.msg,
      type: 'success',
      center: true
    });
  } else {
    that.$message({
      showClose: true,
      message: res.data,
      type: 'error',
      center: true
    });
  }
  that.getList()
}

// 查询字典
export function findDictById(data) {
  return request({
    url: '/sysDictData/' + data,
    method: 'get'
  })
}
